﻿using Abp.Application.Services.Dto;
using Abp.AutoMapper;
using AutoMapper;
using Mt.Site.Core.WorkFlows.Design.Cache;
using Mt.Site.Core.WorkFlows.Design.Entities;
using Mt.Site.Core.WorkFlows.Enum;
using System;

namespace Mt.Site.Application.WorkFlows.Dto
{
    [AutoMapFrom(typeof(WorkFlow))]
    public class WorkFlowDesignDto:EntityDto<Guid>
    {
        public bool IsActive { get; set; }

        public int Order { get; set; }


        public string Name { get; set; }

        public string ShortName { get; set; }

        public Guid CategeoryId { get; set; }

        public bool IsHaveAttachment { get; set; }

        public bool IsHaveOnlineWord { get; set; }

        /// <summary>
        /// 委托类型
        /// </summary>
        public EntrustType EntrustType { get; set; }

        public string Description { get; set; }

        /// <summary>
        /// 文号格式
        /// </summary>
        public string NumberFormat { get; set; }

        /// <summary>
        /// 自动编号的位数
        /// </summary>
        public int DigitNumber { get; set; }

        /// <summary>
        /// 自动编号的当前计数
        /// </summary>
        public int NumberCounting { get; set; }

        /// <summary>
        /// 部门Id的集合（,号分割）
        /// </summary>
        public string UnitIdList { get; set; }

        /// <summary>
        /// 主动撤回时是否记录日志
        /// </summary>
        public bool ShouldLogWhenDrawback { get; set; }

        public string UnitNames { get; set; }

        public string OptionFunction { get; set; }

        [IgnoreMap]
        public WorkflowCustomData CustomData { get; set; }
    }
}
